package com.qzdsoft.erpcloud.vo.pu;

import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.qzdsoft.vo.pu.PurchaseOrderStatus;

public class PurchaseOrderInfo implements Serializable{
	
	private static final long serialVersionUID = 793029235923157298L;
	//	采购单ID
	private Integer id;
//	 所属公司
	private String companyName;
// 所属公司id
	private Integer companyid;
//	 来源单号
	private String sourceOrderNo;
   //来源单号id
	private Integer sourceBillid;
//	 订单单编号
	private String orderNo;
//	 供应名称
	private String supplierName;
//  供应商id
	private Integer supplierid;
//	 供应商联系人
	private String supplierConnact;
	//预入仓库
	private String wharehouse;
	//供应商联系人id
	private Integer supplierConnactId;
//	 联系电话
	private String phone;
//	 到货地址
	private String address;
	//订单总量
	private int count;
	/*//订单入库总量
	private int inStorageCount;
	//未入库总量
	private int notInStorageCount;*/
//	 含税单价
	private String priceIncludingTax;
//	 未含税费用
	private String totalPriceNotIncludingTax;
//	 状态
	private String status;
	
	//状态string
	private String statusStr;
//	 审核人
	private String confirmPerson;
//	 审核日期
	@JsonFormat(timezone="GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
	private Date confirmDate;
//	 修改人
	private String modifyPerson;
//	 修改日期
	@JsonFormat(timezone="GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
	private Date mofifyDate;
//	 创建人
	private String createPerson;
//	 创建日期
	@JsonFormat(timezone="GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
	private Date createDate;
//	 备注
	private String remark;
	
	//结算方法id
	private Integer settleMethodId;
	
	//结算方法名称
	private String settleMethodName;
	
	//结算天数
	private Integer settleDays;
	
	//结算币种
	private String settleCurrencyName;
	
	private String taxRate;//税率
	
	private Integer sourceType;//来源类型
	
	private String exchargeRate;//汇率
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getCompanyName() {
		return companyName;
	}
	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}
	
	public String getWharehouse()
    {
        return wharehouse;
    }
    public void setWharehouse(String wharehouse)
    {
        this.wharehouse = wharehouse;
    }
    public Integer getSourceBillid()
    {
        return sourceBillid;
    }
    public void setSourceBillid(Integer sourceBillid)
    {
        this.sourceBillid = sourceBillid;
    }
    public String getSourceOrderNo() {
		return sourceOrderNo;
	}
	public void setSourceOrderNo(String sourceOrderNo) {
		this.sourceOrderNo = sourceOrderNo;
	}
	public String getOrderNo() {
		return orderNo;
	}
	
	public Integer getSupplierConnactId()
    {
        return supplierConnactId;
    }
    public void setSupplierConnactId(Integer supplierConnactId)
    {
        this.supplierConnactId = supplierConnactId;
    }
    public void setOrderNo(String orderNo) {
		this.orderNo = orderNo;
	}
	public String getSupplierName() {
		return supplierName;
	}
	public void setSupplierName(String supplierName) {
		this.supplierName = supplierName;
	}
	public String getSupplierConnact() {
		return supplierConnact;
	}
	public void setSupplierConnact(String supplierConnact) {
		this.supplierConnact = supplierConnact;
	}
	
	public Integer getSourceType()
    {
        return sourceType;
    }
    public void setSourceType(Integer sourceType)
    {
        this.sourceType = sourceType;
    }
    public String getPhone() {
		return phone;
	}
	public void setPhone(String phone) {
		this.phone = phone;
	}
	public int getCount() {
		return count;
	}
	public void setCount(int count) {
		this.count = count;
	}
/*	public int getInStorageCount() {
		return inStorageCount;
	}
	public void setInStorageCount(int inStorageCount) {
		this.inStorageCount = inStorageCount;
	}
	public int getNotInStorageCount() {
		return notInStorageCount;
	}
	public void setNotInStorageCount(int notInStorageCount) {
		this.notInStorageCount = notInStorageCount;
	}*/
	public String getPriceIncludingTax() {
		return priceIncludingTax;
	}
	public void setPriceIncludingTax(String priceIncludingTax) {
		this.priceIncludingTax = priceIncludingTax;
	}
	public String getTotalPriceNotIncludingTax() {
		return totalPriceNotIncludingTax;
	}
	public void setTotalPriceNotIncludingTax(String totalPriceNotIncludingTax) {
		this.totalPriceNotIncludingTax = totalPriceNotIncludingTax;
	}
	
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	public String getStatus() {
		return status;
	}
	public void setStatus(String status) {
		this.status = status;
	}
	public String getConfirmPerson() {
		return confirmPerson;
	}
	public void setConfirmPerson(String confirmPerson) {
		this.confirmPerson = confirmPerson;
	}
    public Date getConfirmDate()
    {
        return confirmDate;
    }
    public void setConfirmDate(Date confirmDate)
    {
        this.confirmDate = confirmDate;
    }
    public String getModifyPerson()
    {
        return modifyPerson;
    }
    public void setModifyPerson(String modifyPerson)
    {
        this.modifyPerson = modifyPerson;
    }
    public Date getMofifyDate()
    {
        return mofifyDate;
    }
    public void setMofifyDate(Date mofifyDate)
    {
        this.mofifyDate = mofifyDate;
    }
    public String getCreatePerson()
    {
        return createPerson;
    }
    public void setCreatePerson(String createPerson)
    {
        this.createPerson = createPerson;
    }
    public Date getCreateDate()
    {
        return createDate;
    }
    public void setCreateDate(Date createDate)
    {
        this.createDate = createDate;
    }
    public String getRemark()
    {
        return remark;
    }
    public void setRemark(String remark)
    {
        this.remark = remark;
    }
    public Integer getCompanyid()
    {
        return companyid;
    }
    public void setCompanyid(Integer companyid)
    {
        this.companyid = companyid;
    }
    public Integer getSupplierid()
    {
        return supplierid;
    }
    public void setSupplierid(Integer supplierid)
    {
        this.supplierid = supplierid;
    }
    
    public Integer getSettleMethodId()
    {
        return settleMethodId;
    }
    public void setSettleMethodId(Integer settleMethodId)
    {
        this.settleMethodId = settleMethodId;
    }
    public String getSettleMethodName()
    {
        return settleMethodName;
    }
    public void setSettleMethodName(String settleMethodName)
    {
        this.settleMethodName = settleMethodName;
    }
    public Integer getSettleDays()
    {
        return settleDays;
    }
    public void setSettleDays(Integer settleDays)
    {
        this.settleDays = settleDays;
    }
    public String getSettleCurrencyName()
    {
        return settleCurrencyName;
    }
    public void setSettleCurrencyName(String settleCurrencyName)
    {
        this.settleCurrencyName = settleCurrencyName;
    }
    public String getTaxRate()
    {
        return taxRate;
    }
    public void setTaxRate(String taxRate)
    {
        this.taxRate = taxRate;
    }
    public String getExchargeRate()
    {
        return exchargeRate;
    }
    public void setExchargeRate(String exchargeRate)
    {
        this.exchargeRate = exchargeRate;
    }
    public void setStatusStr(String statusStr)
    {
        this.statusStr = statusStr;
    }
    public String getStatusStr()
    {
        
        switch(status){
            case PurchaseOrderStatus.CLOSE_CODE:
                statusStr = PurchaseOrderStatus.CLOSE.getValue();
                break;
            case PurchaseOrderStatus.COMPLETE_CODE:
                statusStr = PurchaseOrderStatus.COMPLETE.getValue();
                break;
            case PurchaseOrderStatus.HAS_REVIEW_CODE:
                statusStr = PurchaseOrderStatus.HAS_REVIEW.getValue();
                break;
            case PurchaseOrderStatus.NOT_REVIEW_CODE:
                statusStr = PurchaseOrderStatus.NOT_REVIEW.getValue();
                break;
              default:
                  break;
        }
        return statusStr;
    }
	
}
